Systems and methods to provide remote support services to a testing device

ABSTRACT

Systems and methods to provide remote support services to a testing device are disclosed. An example testing device includes a computing device configured to obtain a measurement value related to the material or component under test. The computing device includes: a display; an input device; a processor; and a memory coupled to the processor and storing computer readable instructions which, when executed by the processor, cause the processor to: in response to first input via the input device, transmit a request for a technical support service to a remote computing system; perform, at the computing device, one or more remote service actions associated with the technical support service.

BACKGROUND

This disclosure relates generally to mechanical testing, and moreparticularly, to systems and methods to provide remote support servicesto a testing device.

Universal testing machines are used to perform mechanical testing, suchas compression strength testing or tension strength testing, onmaterials or components.

SUMMARY

Systems and methods to provide remote support services to a testingdevice are disclosed, substantially as illustrated by and described inconnection with at least one of the figures, as set forth morecompletely in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features, aspects, and advantages of the presentdisclosure will become better understood when the following detaileddescription is read with reference to the accompanying drawings in whichlike characters represent like parts throughout the drawings, wherein:

FIG. 1 is an example testing device to perform mechanical propertytesting, in accordance with aspects of this disclosure.

FIG. 2 is a block diagram of an example implementation of the testingdevice of FIG. 1 .

FIG. 3 is a block diagram of an example system including the testingdevice of FIGS. 1 and 2 and a servicing system, in accordance withaspects of this disclosure.

FIG. 4 is a flowchart representative of example machine readableinstructions which may be executed by the example testing device ofFIGS. 1 and 2 to request remote service actions.

FIG. 5 is a flowchart representative of example machine readableinstructions which may be executed by the example testing device ofFIGS. 1 and 2 to initialize the testing device.

FIG. 6 is a flowchart representative of example machine readableinstructions which may be executed by the example testing device ofFIGS. 1 and 2 to establish a remote connection for performing remoteservice actions at the testing device.

FIG. 7 illustrates an example remote service user interface that may bedisplayed at the testing device of FIGS. 1 and 2 and which includesstatus information about the testing device.

FIG. 8 illustrates an example remote service user interface that may bedisplayed at the testing device of FIGS. 1 and 2 and which enables auser to transmit files from the testing device to a remote computingsystem.

FIG. 9 is a block diagram representative of computing system that may beused to implement the example queuing system and/or the exampleservicing system of FIG. 3 .

FIG. 10 illustrates an example remote service user interface that may bedisplayed at a computing device associated with a remote computingsystem.

FIG. 11 illustrates an example remote service user interface that may bedisplayed at a computing device associated with a remote computingsystem.

FIG. 12 illustrates an example user interface that may be displayed atthe testing device of FIGS. 1 and 2 , including an inbound call alert.

FIG. 13 is a flowchart representative of example machine readableinstructions which may be executed by the example queueing system and/orthe servicing system of FIG. 3 to process requests.

FIG. 14 is a flowchart representative of example machine readableinstructions which may be executed by the example queueing system and/orthe servicing system to perform remote service action(s) at the testingdevice of FIGS. 1, 2, and 3 .

The figures are not necessarily to scale. Wherever appropriate, similaror identical reference numerals are used to refer to similar oridentical components.

DETAILED DESCRIPTION

When a conventional mechanical testing device is not operating asdesired, the operator (or other personnel associated with the testingdevice) may contact a manufacturer or distributor of the testing devicein an attempt to troubleshoot the operational issue. For troubleshootingconventional testing systems, contact between the service personnel andthe testing device operator often involves multiple, separate contactssuch as phone calls, emails, text chats, and/or other steps to providethe complete set of information needed by the service personnel toresolve the issue to the satisfaction of the operator. Such multiplesteps can be a source of frustration to the operator and/or reducesuptime of the testing device for performing mechanical tests.Furthermore, if a resolution of the issue cannot be accomplished withremote service personnel, an in-person service visit may be required,which increases the service costs to the owner of the testing deviceand/or to the provider of the support services.

Disclosed example systems and methods enable useful remote supportservices to be requested directly from the testing device and/orprovided directly at the testing device. Some example systems andmethods include enabling service personnel to initiate a real-timesupport session with the testing device. Example real-time supportsessions may include audio calls, audiovisual conferencing, screensharing by the testing device with remote service personnel, and/orremote desktop control by remote service personnel. In some examples,the service personnel is provided with relevant information about thetesting device to aid in rapid resolution of issues.

Disclosed examples reduce the time and cost involved in having remoteservice personnel resolve issues or otherwise assist testing deviceoperators. Disclosed examples also enable other value-added services totesting device owners and/or operators, such as providing notificationsas to calibration and/or service contract status, scheduling calibrationservice, providing notifications regarding available updates to softwareand/or firmware installed at the testing device, reducing the time andeffort needed to request technical support services by enabling requestsfrom the testing device, and/or easily selecting and uploading files orother data to the remote service provider for use in resolving issues.

Disclosed example testing devices to measure a mechanical property of amaterial or component include a computing device to obtain a measurementvalue related to the material or component under test. The computingdevice includes a display, an input device, a processor, and a memorycoupled to the processor. The memory stores computer readableinstructions which, when executed by the processor, cause the processorto: in response to first input via the input device, transmit a requestfor a technical support service to a remote computing system; andperform, at the computing device, one or more remote service actionsassociated with the technical support service.

In some examples, the computer readable instructions cause the processorto transmit, to the remote computing system, information associated withthe one or more remote service actions. In some such examples, theinformation associated with the one or more remote service actionsincludes at least one of a testing device calibration status, a softwareversion, a serial number of the testing device, operator contactinformation associated with the testing device, or a service agreementstatus.

In some example testing devices, the computer readable instructionscause the processor to: present, via the display, an interfacerepresentative of a file system stored on the computing device thatpermits an operator to select one or more files from the file system;and in response to a designated input via the input device, transmit theselected one or more files to the remote computing system.

Some example testing devices include a microphone and a speaker, inwhich the computer readable instructions cause the processor toestablish, with a second computing system identified in the support callinitiation message, at least one of an audio connection or a remotecontrol connection. In some examples, the computer readable instructionscause the processor to enter the support call reception mode bytransmitting a request message to the remote computing system, in whichthe support call initiation message is a response to the request. Insome examples, the request includes an Internet protocol (IP) requestmessage.

In some examples, the computer readable instructions cause the processorto establish the audio connection by establishing a voice over Internetprotocol (VoIP) session. In some examples, the computer readableinstructions cause the processor to establish the remote controlconnection by establishing an application sharing protocol session viathe remote computing system. In some examples, the computer readableinstructions further cause the processor to: enter a support callreception mode in which the processor can receive a support callinitiation message from the remote computing system; and in response toreceiving the support call initiation message, display an inbound callalert on the display, the instructions to cause the processor toestablish the at least one of the audio connection or the remote controlconnection in response to receiving, while the inbound call alert isactive, an input associated with acceptance of a support call associatedwith the support call initiation message.

In some examples, the testing device is configured to test, for amaterial under test, at least one of a tensile strength, a compressionstrength, a flexural strength, a shear strength, an impact strength, atorsional strength, or an adhesion strength. In some example testingdevices, the computer readable instructions cause the processor toaccess a communication received from the remote computing system andassociated with the request, in which the communication identifies theone or more remote service actions to be performed on the computingdevice, and the instructions cause the processor to perform the one ormore remote service actions in response to second input via the userinput device.

In some examples, the request for the technical support service includesat least one of: a request for a software update for the testing deviceor a request for a live support session. In some examples, theprocessor, in response to logging in an operator at the computingdevice, transmits data associated with the testing device to the remotecomputing system.

In some example testing devices, the computer readable instructionscause the processor to, prior to the request for the technical supportservice, establish a data connection to the remote computing system. Insome examples, the request for the technical support service includes atleast one of an identifier of the testing device or an identifierassociated with the data connection established between the testingdevice and the remote computing system.

In some examples, the computer readable instructions cause the processorto determine a calibration status of the testing device and, in responseto determining that the testing device is due for calibration based onthe calibration status, display a notification on the display associatedwith the calibration status. In some such examples, the processor, inresponse to receiving an input via the input device, displays aninterface to enable an operator of the computing device to schedule acalibration for the testing device.

Disclosed example testing devices to measure a mechanical property of amaterial or component include a computing device configured to obtain ameasurement value related to the material or component under test. Thecomputing device includes: a display; an input device; a processor; anda memory coupled to the processor and storing computer readableinstructions. The instructions, when executed by the processor, causethe processor to: determine a calibration status of the testing device;and in response to determining that the testing device is due forcalibration based on the calibration status, display a notification onthe display associated with the calibration status.

FIG. 1 is an example testing device 100 to perform mechanical propertytesting. The example testing device 100 may be, for example, a universaltesting system capable of static mechanical testing. The testing device100 may perform, for example, compression strength testing, tensionstrength testing, shear strength testing, bend strength testing,deflection strength testing, tearing strength testing, peel strengthtesting (e.g., strength of an adhesive bond), and/or any othercompressive, tensile, torsion, thermal, and/or impact testing.Additionally or alternatively, the testing device 100 may performdynamic testing.

The example testing device 100 includes a test fixture 102 and acomputing device 104 communicatively coupled to the test fixture 102.The test fixture 102 applies loads to a material under test 106 andmeasures the mechanical properties of the test, such as displacement ofthe material under test 106 and/or force applied to the material undertest 106.

The example computing device 104 may be used to configure the testfixture 102, control the test fixture 102, and/or receive measurementresults from the test fixture 102 for processing, display, reporting,and/or any other desired purposes.

FIG. 2 is a block diagram of an example computing system 200 that may beused to implement the testing device 100 of FIG. 1 . The example testingdevice 100 of FIG. 2 includes the test fixture 102 and the computingdevice 104. The example computing device 104 may be a general-purposecomputer, a laptop computer, a tablet computer, a mobile device, aserver, an all-in-one computer, and/or any other type of computingdevice.

The example computing system 200 of FIG. 2 includes a processor 202. Theexample processor 202 may be any general purpose central processing unit(CPU) from any manufacturer. In some other examples, the processor 202may include one or more specialized processing units, such as RISCprocessors with an ARM core, graphic processing units, digital signalprocessors, and/or system-on-chips (SoC). The processor 202 executesmachine readable instructions 204 that may be stored locally at theprocessor (e.g., in an included cache or SoC), in a random access memory206 (or other volatile memory), in a read only memory 208 (or othernon-volatile memory such as FLASH memory), and/or in a mass storagedevice 210. The example mass storage device 210 may be a hard drive, asolid state storage drive, a hybrid drive, a RAID array, and/or anyother mass data storage device.

A bus 212 enables communications between the processor 202, the RAM 206,the ROM 208, the mass storage device 210, a network interface 214,and/or an input/output interface 216.

The example network interface 214 includes hardware, firmware, and/orsoftware to connect the computing system 200 to a communications network218 such as the Internet. For example, the network interface 214 mayinclude IEEE 802.X-compliant wireless and/or wired communicationshardware for transmitting and/or receiving communications.

The example I/O interface 216 of FIG. 2 includes hardware, firmware,and/or software to connect one or more input/output devices 220 to theprocessor 202 for providing input to the processor 202 and/or providingoutput from the processor 202. For example, the I/O interface 216 mayinclude a graphics processing unit for interfacing with a displaydevice, a universal serial bus port for interfacing with one or moreUSB-compliant devices, a FireWire, a field bus, and/or any other type ofinterface. The example testing device 100 includes a display device 224(e.g., an LCD screen) coupled to the I/O interface 216. Other exampleI/O device(s) 220 may include a keyboard, a keypad, a mouse, atrackball, a pointing device, a microphone, an audio speaker, a displaydevice, an optical media drive, a multi-touch touch screen, a gesturerecognition interface, a magnetic media drive, and/or any other type ofinput and/or output device.

The example computing system 200 may access a non-transitory machinereadable medium 222 via the I/O interface 216 and/or the I/O device(s)220. Examples of the machine readable medium 222 of FIG. 2 includeoptical discs (e.g., compact discs (CDs), digital versatile/video discs(DVDs), Blu-ray discs, etc.), magnetic media (e.g., floppy disks),portable storage media (e.g., portable flash drives, secure digital (SD)cards, etc.), and/or any other type of removable and/or installedmachine readable media.

The example testing device 100 of FIG. 1 further includes the testfixture 102 coupled to the computing system 200. In the example of FIG.2 , the test fixture 102 is coupled to the computing device via the I/Ointerface 216, such as via a USB port, a Thunderbolt port, a FireWire(IEEE 1394) port, and/or any other type serial or parallel data port. Insome other examples, the test fixture 102 is coupled to the networkinterface 214 via a wired or wireless connection, either directly or viathe network 218.

The test fixture 102 of FIG. 2 includes a frame 228, a load cell 230, adisplacement transducer 232, a cross member loader 234, materialfixtures 236, and a controller 238. The test fixture 102 may include anynumber of other transducers, based on the type(s) of mechanical teststhat the test fixture 102 is capable of performing. Other test fixturesmay be dynamic test fixtures and/or include different test equipment,while including appropriate transducers that produce test data and maybe controlled via the computing device 104.

The frame 228 provides rigid structural support for the other componentsof the test fixture 102 that perform the test. The load cell 230measures force applied to a material under test by the cross-memberloader 234 via the material fixtures 236. The cross-member loader 234applies force to the material under test, while the material fixtures236 (e.g., grips or other fixturing) grasp or otherwise couple thematerial under test to the cross-member loader 234. Example materialfixtures 236 include grips, jaws, jigs, anvils, compression platens, orother types of fixtures, depending on the mechanical property beingtested and/or the material under test.

The example controller 238 communicates with the computing device 104to, for example, receive test parameters from the computing device 104and/or report measurements and/or other results to the computing device104. For example, the controller 238 may include one or morecommunication or I/O interfaces to enable communication with thecomputing device 104. The controller 238 may control the cross-memberloader 234 to increase or decrease applied force, control the fixture(s)236 to grasp or release a material under test, and/or receivemeasurements from the displacement transducer 232, the load cell 230,and/or any other transducer(s).

FIG. 3 is a block diagram of an example system 300 including the testingdevice 100 of FIGS. 1 and 2 and a servicing system 302. The servicingsystem 302 is communicatively connected to the testing device 100 from aremote location 304 to perform remote service actions, via theconnection, at the testing device 100. The example system 300 includesone or more communications networks 306, such as the public Internet, aprivate network, or some combination of public and private networks(e.g., virtual networks).

The example servicing system 302 may be used to communicatively connectsupport or service personnel 308 a, 308 b with the testing device 100via service terminals 310 a, 310 b. For example, the service personnel308 a, 308 b may be service technicians who are trained to assist withtechnical service requests by users of the testing device 100. Insteadof necessitating on-site visits for equipment or training issuesexperienced by operators of the testing device 100, the servicepersonnel 308 a, 308 b may, via the service terminals 310 a, 310 b,receive data files and/or status information from the testing device100, establish an audio connection with the testing device 100 (e.g., totalk to an operator proximate the testing device 100), establish anapplication sharing protocol session with the testing device 100 (e.g.,to receive inputs and/or outputs from the software of the testing device100), and/or perform other remote service actions at the testing device100 from a remote location.

In the example of FIG. 3 , the system 300 includes a queueing system 312that receives information from the testing device 100 and/or any othertesting devices 314 configured to enable remote support actions. Thetesting devices(s) 314 may be identical, similar, or different than theexample testing device 100. The example queueing system 312 separatelyidentifies the example testing devices 100, 314, such as identifying thetesting devices 100, 314 using unique system identifiers (e.g., serialnumbers), unique connection identifiers (e.g., session identifiers),and/or any other method of separately identifying (e.g., uniquelyidentifying) different systems.

In some examples, the queueing system 312 maintains one or moredatabases storing information associated with the testing devices 100,314, and provides relevant information to the servicing system 302 whenthe testing devices 100, 314 transmit requests for information to thequeueing system 312. Example information that may be stored by thequeueing system 312 may include unique system identifiers of the testingdevices 100, 314, session identifiers associated with the testingdevices 100, 314, contact information of personnel associated with thetesting devices 100, 314, diagnostic data associated with the testingdevices 100, 314 (e.g., voltages, temperatures, machine cycles, machinetravel, etc.), physical location information for the testing devices100, 314, testing device software information, current software versioninformation, service and support history for the testing devices 100,314, testing device model information (e.g., model numbers,manufacturing year, manufacturing batch, hardware version, firmwareversion, etc.), testing device installation dates, service contractinformation (e.g., a contract number, contract terms, service levelagreement information, etc.), testing device purchase information (e.g.,an order number), calibration information (e.g., last calibration date,calibration due date, calibration status, etc.), a download status,and/or an acceptance date of testing device terms and conditions. Any ofthe information stored at the queueing system 312 may be updatedperiodically, aperiodically, on demand, in response to events such as anoperator logging onto the testing device 100, and/or at any other time.

The example servicing system 302 coordinates service by the servicepersonnel 308 a, 308 b to the testing devices 100, 314 based on requestsreceived via the queueing system 312. For example, when the servicingsystem 302 receives a request for a technical support service from thequeueing system 312, the servicing system 302 may automatically handlecertain types of technical support requests and/or select one or more ofthe available personnel 308 a, 308 b to service the technical supportrequest from the testing device 100, 314.

To service requests, the example service terminals 310 a, 310 b mayaccess information provided by the queueing system 312 about the testingdevice 100 from which the technical service request originated. When theservice personnel 308 a, 308 b contact an operator of the testing device100 to attempt to resolve any issues, the service personnel 308 a, 308 bmay have the applicable information about the testing device 100immediately available via the service terminal 310 a, 310 b, whichreceives the applicable information (or access to the applicableinformation) from the servicing system 302 based on the handling of therequest.

In some examples, the queueing system 312 is omitted and/or integratedinto the servicing system 302. The queueing system 312 and the servicingsystem 302 may be implemented using any number of computing devices.

FIG. 4 is a flowchart representative of example machine readableinstructions 400 which may be executed by the example testing device 100of FIGS. 1 and 2 to request remote service actions. The exampleinstructions 400 may be performed by the example computing device 104described in FIG. 2 . The instructions 400 are described below withreference to the implementation of FIG. 2 , but may be performed byother testing devices.

At block 402, an operator logs into the testing device 100. For example,the operator may use one or more of the I/O devices 220 (e.g., akeyboard, a touchscreen, a key card, a biometric scanner, etc.) to loginto software executing on the processor 202. At block 404, theprocessor 202 initializes the testing device 100. For example, theprocessor 202 may execute a login script or other set of instructions toprepare the test fixture 102 for mechanical testing. Exampleinstructions to implement block 404 are disclosed below with referenceto FIG. 5 .

At block 406, the example processor 202 executes a user interface (e.g.,via the display device 224 and/or other I/O devices 220). An exampleuser interface enables a user to set up and execute a mechanicalproperty test according to desired parameters, to manage data generatedby the testing device (e.g., storing, viewing, transferring), and/or toconfigure the testing device 100. At block 408, the processor 202determines whether a remote support tool has been selected via the userinterface. For example, the user interface may include an option toselect a remote support tool from which an operator may submit requestsfor technical support services, as disclosed herein. If the remotesupport tool has not been selected (block 408), control returns to block406 to continue executing the user interface and/or, if anotheroperational mode has been selected, enters another operational mode. Insome examples, the remote support tool can be selected from multiple(e.g., all) operational modes of the user interface.

If the remote support tool has been selected (block 408), at block 410the processor displays the remote support interface. At block 412, theprocessor 202 displays a remote system connection status, a softwareversion status, and/or a testing system calibration status for thetesting device 100. For example, the remote system connection status mayindicate whether the testing device 100 has established a communicationconnection with the queueing system 312 and/or the servicing system 302.The software version status may indicate the current version of software(e.g., testing software or firmware) installed on the testing device 100and/or whether a newer version is available to be installed. The testingsystem calibration status may indicate a due date for calibration, andwhether the testing device 100 currently requires calibration toreliably achieve a desired accuracy level.

At block 414, the processor 202 determines whether a software upgradehas been initiated. For example, when a software update is available,the example testing device 100 may enable initiation of a softwareupgrade. Alternatively, the software upgrade may be initiated inresponse to a software upgrade command received via the user interfaceof the testing device 100. In some examples, the initiation of asoftware upgrade is dependent on the operator having or obtainingpredetermined credentials or approval. An example of the user interfaceproviding an upload interface is illustrated in FIG. 7 . If a softwareupgrade has been initiated (e.g., via a I/O device 220), at block 416the example processor 202 downloads and installs the available software.In some examples, installation of the software requires authorization,customization, and/or other interaction with an operator via userinterface(s) of the testing device 100.

In some examples, installation of the updated software requires closingthe running version of the software, after which an installer canproceed to update or replace the installed software with the updatedsoftware. Before and/or after installing the available software, thecomputing device 104 may require a restart to begin executing the newsoftware version. In such examples, after installing the software atblock 416, control may return to block 402. In some other examples inwhich the software upgrade does not require a restart (e.g., thesoftware upgrade does not affect execution of the user interface), theprocessor 202 may continue executing the user interface.

After installing the software (block 416), or if a software upgrade isnot initiated (block 414), at block 418 the processor 202 determineswhether files have been selected for upload. For example, the userinterface may enable a user to easily transmit one or more files to thequeueing system 312 and/or the servicing system 302. For example, theuser interface may enable a user to easily select a file that iscurrently being viewed or otherwise operated on by the operator, accessthe file system of the computing device to select stored files, prepareand send a screenshot of the content being shown on the display 224,and/or any other files. An example of the user interface providing anupload interface is illustrated in FIG. 8 . If files have been selectedfor upload (block 418), at block 420 the processor 202 transmits anyselected files to the remote computing system.

After transmitting the files (block 420), or if files have not beenselected for upload (block 418), at block 422 the processor 202determines whether a request for technical support has been defined bythe operator (or other user). For example, the user interface (e.g., asillustrated in FIG. 7 ) may enable a user to enter contact informationand a description of requested service for submission to the remotecomputing system via an established connection. If a request fortechnical support has been defined by the operator (block 422), at block424 the processor 202 transmits (e.g., via the network interface 214)the request for the technical support service(s) to the remote computingsystem.

After transmitting the request for the technical support service(s)(block 424), or if no requests have been defined by the operator (block422), at block 426 the processor 202 determines whether an incomingconnection request has been received. For example, if service personnel308 a, 308 b initiate a connection with the testing device 100 via thesupport terminals 310 a, 310 b, the servicing system 302 and/or thequeueing system 312 transmit a connection request to the testing device100. The request connection may be a push-type message, a long pollresponse-type message (e.g., to reduce or eliminate the need to makefirewall exceptions for the testing device 100 in a network), and/or anyother message or protocol to transmit the connection request to thetesting device 100. In some examples, the processor 202 implements avoice over IP (VoIP) client and/or an application sharing protocolclient to handle incoming connection requests and/or audio, video,and/or application sharing connections.

If an incoming connection request has been received (block 426), atblock 427 the processor 202 determines whether real-time connections areenabled at the testing device 100. For example, the operator (oradministrator) may disable real-time connections (e.g., audio calls,audiovisual conferencing, and/or application sharing) to preventestablishing real-time connections at the testing device 100. Ifreal-time connections are enabled (block 427), at block 428 theprocessor 202 provides an incoming connection alert on the testingdevice 100. For example, the processor 202 may output a visual alert onthe user interface, as illustrated in FIG. 11 .

At block 430, the processor 202 determines whether the incomingconnection has been accepted by the operator. For example, the processor202 may determine whether any inputs have been received and, if so,whether the inputs correspond to acceptance of the incoming connection.If the incoming connection has been accepted by the operator (block430), at block 432 the processor 202 establishes the remote connectionfor performing remote service actions. The remote connection mayinvolve, for example, an audio connection enabling the operator to speakwith the calling service personnel 308 a, 308 b, an application sharingor screen sharing application enabling the service personnel 308 a, 308b to view and/or control the testing device 100 via the computing device104. Example instructions for establishing the remote connection aredescribed below with reference to FIG. 6 .

After the remote connection has ended (block 432), if the incomingconnection is not accepted (block 430), if real-time remote connectionsare disabled at the testing device 100 (block 427), or if the noincoming connection requests have been received (block 426), controlreturns to block 410 to continue displaying the remote supportinterface.

While the example instructions 400 include an example order of executionof the blocks 402-430, other arrangements of some or all the blocks402-430 may be used. Additionally or alternatively, one or more blocksmay be added, omitted, and/or modified.

FIG. 5 is a flowchart representative of example machine readableinstructions 500 which may be executed by the example testing device ofFIGS. 1 and 2 to initialize the testing device. The example instructions500 of FIG. 5 may be executed by the processor 202 of FIG. 2 toimplement block 404 of FIG. 4 to initialize the testing device 100. Theinstructions 500 may enter from block 402, when an operator logs intothe testing device 100.

At block 502, the processor 202 initializes a support call handler. Thesupport call handler may be a VoIP application or other remoteconnection handler that receives the incoming connection requests fromthe servicing system 302 and/or the queueing system 312 and/or managesthe connection when established. At block 504, the processor 202accesses connection data that may be used by the queueing system 312and/or the servicing system 302 to establish and/or maintain aconnection with the testing device 100. For example, the connection datamay include a testing device address (e.g., an IP address, a mediaaccess control (MAC) identifier, etc.), a system identifier (e.g., aserial number of the testing device 100), and/or an application key. Theprocessor 202 may access the connection data from the mass storagedevice 210, the RAM 206, the ROM 208, the controller 238, and/or anyother location in which the connection data may be stored.

At block 506, the processor 202 (e.g., via the network interface 214)establishes a network connection with the remote computing system usingthe connection data. For example, the processor 202 may request aconnection from the queueing system 312 and/or the servicing system 302via the network 306. The request may include any or all of theconnection data accessed by the processor 202, and/or may involve ahandshake protocol or any other process of establishing the connection.In some examples, the connection data results in the generation of asession identifier or other connection identifier that can be used toidentify the testing device 100 to the remote computing system for theduration of the connection (or until the session/connection identifieris replaced).

At block 508 (e.g., when the connection is established between thetesting device 100 and the queueing system 312 and/or the servicingsystem 302), the processor 202 accesses service data for the testingdevice 100. The processor 202 may access the service data from the massstorage device 210, the RAM 206, the ROM 208, the controller 238, and/orany other location in which the connection data may be stored. Exampleservice data may include contact information of personnel associatedwith the testing devices 100, 314, physical location information for thetesting devices 100, 314, testing device diagnostic information, testingdevice software information, current software version information,service and support history for the testing devices 100, 314, testingdevice model information (e.g., model numbers, manufacturing year,manufacturing batch, hardware version, firmware version, etc.), testingdevice installation dates, service contract information (e.g., acontract number, contract terms, service level agreement information,etc.), testing device purchase information (e.g., an order number),calibration information (e.g., last calibration date, calibration duedate, calibration status, etc.), a download status, and/or an acceptancedate of testing device terms and conditions.

At block 510, the processor 202 sends the service data to the remotecomputing system (e.g., the queueing system 312 and/or the servicingsystem 302) via the network connection.

At block 512, the processor 202 receives an identification of thecurrent software version available for the testing device 100. Theprocessor 202 compares the available software version to the versioninstalled on the testing device 100. If the current software version ismore recent than the installed software version (block 514), at block516 the processor 202 displays a notification of an available softwareupgrade. An example of a displayed notification is illustrated in FIG. 7.

After displaying the notification (block 516), or if the currentsoftware version is not more recent than the installed software version(block 514), the example instructions 500 may end and transfer controlto block 406 of FIG. 4 .

FIG. 6 is a flowchart representative of example machine readableinstructions 600 which may be executed by the example testing device ofFIGS. 1 and 2 to establish a remote connection for performing remoteservice actions at the testing device 100. The example instructions 600of FIG. 5 may be executed by the processor 202 of FIG. 2 to implementblock 432 of FIG. 4 to establish a remote connection. The instructions600 may enter from block 430, when an operator accepts an incomingconnection at the testing device 100.

At block 602, the processor 202 determines whether the incomingconnection request (e.g., identified in block 426 of FIG. 4 ) includesan audio/video connection. For example, the incoming connection requestmay include a request following the ITU H.323 standard and/or any otheraudio/video standard or protocol. If the incoming connection requestincludes the audio/video connection (block 602), at block 604 theexample processor 202 establishes the audio/video connection with anaudio/video client, using connection information including in theincoming connection request. The audio/video connection enablespersonnel at the testing device 100 to use a microphone, speaker,camera, and display to conduct an audiovisual conference with the one ormore service personnel 308 a, 308 b using the terminal(s) 310 a, 310 bto, for example, discuss a technical support request and/or performremote service actions (e.g., with or without the assistance of thepersonnel present at the

If the incoming connection request includes the audio/video connection(block 602), at block 606 the processor 202 determines whether theincoming connection request includes an audio connection (e.g., anaudio-only connection). For example, the incoming connection request mayinclude a request following the ITU H.323 standard, the SIP protocol,and/or any other audio standard or protocol. If the incoming connectionrequest includes the audio connection (block 606), at block 608 theexample processor 202 establishes the audio connection with an audioclient, using connection information including in the incomingconnection request.

After establishing the audio connection (block 608), after establishingthe audio/video connection (block 604), or if the incoming connectionrequest does not include either of an audio connection or an audio/videoconnection (blocks 602 and 606), at block 610 the processor 202determines whether the incoming connection request includes anapplication sharing connection. For example, the incoming connectionrequest may include a request including a remote login request (e.g.,the Remote Desktop Protocol, a Remote Frame Buffer protocol), areal-time collaboration request, and/or any other application sharingstandard or protocol. If the incoming connection request includes theapplication sharing connection (block 610), at block 612 the exampleprocessor 202 establishes the application sharing connection with anapplication sharing client, using connection information including inthe incoming connection request. The application sharing connection mayenable exchanging of display content information between the testingdevice 100 and the connected terminal 310 a, 310 b, remote control ofone of the testing device 100 and the connected terminal 310 a, 310 bvia the other device, and/or any other application sharing tasks.

While the application sharing connection is included in the sameconnection request as the audio/video connection or the audio connectionin the example blocks 602-612, in other examples the application sharingconnection is received in separate incoming connection requests. Theseparate requests may be received at substantially the same time or atdifferent times.

After establishing the application sharing connection (block 612), or ifthe incoming connection request (block 610), at block 614 the processor202 conducts the established session(s). At block 616, the processor 202determines whether the session(s) are to be terminated. For example, thesession(s) may terminate in response to an input from the operatorand/or in response to a termination message from the terminal 310 a, 310b. If the session(s) are not to be terminated (block 616), controlreturns to block 614 to continue the session(s). When the session(s) areto be terminated (block 616), the example processor 202 concludes thesession(s) and the example instructions 600 end.

FIG. 7 illustrates an example remote service user interface 700 that maybe displayed at the testing device 100 of FIGS. 1 and 2 and whichincludes status information about the testing device 100. The exampleuser interface 700 includes system status information 702, a requestsubmission component 704, and a connection message list 706.

The example system status information 702 may include, for example,connection data (e.g., accessed at block 504 of FIG. 5 ) and/or servicedata (e.g., accessed at block 508 of FIG. 5 ). In the illustratedexample, the system status information 702 includes a connection status708 indicative of whether a connection is established between thetesting device 100 and the remote computing system (e.g., the queueingsystem 312 and/or the servicing system 302) for transfer of data and/orrequests. The system status information 702 further includes acalibration status 710 and a calibration due date 712, a software updatestatus 714 and a software version number 716, a system identifier 718, aservice agreement status 720, and a remote access status 722. Asillustrated in FIG. 7 , the example user interface 700 indicates thatthe testing device 100 has an established connection with the remotecomputing system (e.g., the connection status 708), the testing device100 is due for calibration (e.g., the calibration status 710), asoftware upgrade is available for the testing device 100 (e.g., thesoftware update status 714), and that remote access is not enabled onthe testing device 100 (e.g., the remote access status 722). Based onthe software update status 714, the example interface 700 displays asoftware update button 724 that may be selected to initiate a softwaredownload. Based on the remote access status 722, the interface 700 alsodisplays a remote access enable button 726 that enables receipt ofsupport call initiation messages from the servicing system 302.

The example request submission component 704 enables an operator toenter data describing a request for technical support services for thetesting device 100. Example data includes a description of the requestedtechnical support service (e.g., a request text input 728) and contactinformation for the operator (or other personnel associated with thetesting device 100), such as first and last names, a phone number, anemail address, and/or any other contact information. The request may betransmitted by selecting a request submission button 730. When therequest submission button 730 is selected, the example testing device100 (e.g., via the processor 202 and/or the network interface 214)transmits the request data to the queueing system 312 and/or to theservicing system 300.

The queueing system 312 recognizes the request data as received from thetesting device 100 (e.g., based on a session ID, a connectionidentifier, a system identifier, etc.) and combines the request datareceived from the testing device 100 with other data stored at thequeueing system 312 in association with the testing device 100. Forexample, the queueing system 312 may look up the service informationmost recently reported or updated by the testing device 100, associatethe service information with the request data, and forward the requestdata to the servicing system 300 for handling by the service personnel308 a, 308 b.

The connection message list 706 displays information related torequesting and/or providing technical support services to the testingdevice 100. For example, the processor 202 may output informationalmessages to the operator, such as confirmations of connection and/ordisconnection with the remote computing system, information aboutsoftware updates, confirmations of receipt of request messages at theremote computing system, alerts about messages transmitted from theremote computing system, calibration status alerts, and/or any otherinformation. If connections to the remote servicing system(s) aredisabled, if software updates are disabled for the testing device 100,and/or if calibration statuses are disabled, the example connectionmessage list 706 may include message(s) indicating that, respectively,the testing device 100 is not connected to the remote servicing system,that software updates are disabled, and/or that calibration statuses arenot being checked or provided. For example, any of the remote servicingconnection, software updates, and/or calibration statuses may bedisabled at the testing device 100 and/or determined not to beauthorized at the queueing system 312 or the servicing system 302.

FIG. 8 illustrates an example remote service user interface 800 that maybe displayed at the testing device 100 of FIGS. 1 and 2 and whichenables a user to transmit files from the testing device 100 to a remotecomputing system. The example user interface 800 includes a file uploaddialog 802, which may be displayed in response to selection of a fileupload button 804 in the interface 700 of FIG. 7 . The example fileupload dialog 802 replaces the request submission component 704 in theinterface 800, while the system status information 702 and theconnection message list 706 remain.

The file upload dialog 802 enables a user to upload files that arecurrently being used on the testing device 100 (e.g., test result files)and/or other files determined by the processor 202 to be related to arequest for technical support services. For example, the file uploaddialog 802 may include selections for sample files 806 (e.g., filesindicating data and/or test results from a mechanical property test),method files 808 (e.g., parameters and/or other information used to runa mechanical property test), and/or related files (e.g., files currentlyin use). The selections 806, 808, 810 enable the operator to easilyupload, for example, test data and/or method files that are currently orrecently used, without being required to browse the file system tolocate the data and/or files (which may not even be known to theoperator).

The file upload dialog 802 further enables an operator to navigate thefile system using a file selection dialog 812 to select one or morestored files for upload. When files have been selected for upload, theoperator may select a file upload button 814 to cause the processor 202to access and transmit the selected files to the remote computing system(e.g., the queueing system 312 and/or the servicing system 302). In someexamples, the files are transmitted with an identifier of the testingdevice 100 (e.g., based on a session ID, a connection identifier, asystem identifier, etc.).

The queueing system 312 recognizes the files as received from thetesting device 100 (e.g., based on a session ID, a connectionidentifier, a system identifier, etc.) and combines the request datareceived from the testing device 100 with other data stored at thequeueing system 312 in association with the testing device 100. Forexample, the queueing system 312 may look up the service informationmost recently reported or updated by the testing device 100, associatethe service information with the request data, and forward the requestdata to the servicing system 300 for handling by the service personnel308 a, 308 b.

FIG. 9 is a block diagram representative of a computing system 900 thatmay be used to implement the example queuing system 312, the exampleservicing system 302, and/or the example service terminal(s) 310 a, 310b of FIG. 3 . The example computing system 900 may be a general-purposecomputer, a server, a laptop computer, a tablet computer, a mobiledevice, a server, an all-in-one computer, and/or any other type ofcomputing device.

The example computing system 900 of FIG. 9 includes a processor 902. Theexample processor 902 may be any general purpose central processing unit(CPU) from any manufacturer. In some other examples, the processor 902may include one or more specialized processing units, such as RISCprocessors with an ARM core, graphic processing units, digital signalprocessors, and/or system-on-chips (SoC). The processor 902 executesmachine readable instructions 904 that may be stored locally at theprocessor (e.g., in an included cache or SoC), in a random access memory906 (or other volatile memory), in a read only memory 908 (or othernon-volatile memory such as FLASH memory), and/or in a mass storagedevice 910. The example mass storage device 910 may be a hard drive, asolid state storage drive, a hybrid drive, a RAID array, and/or anyother mass data storage device.

A bus 912 enables communications between the processor 902, the RAM 906,the ROM 908, the mass storage device 910, a network interface 914,and/or an input/output interface 916.

The example network interface 914 includes hardware, firmware, and/orsoftware to connect the computing system 900 to a communications network918 such as the Internet. For example, the network interface 914 mayinclude IEEE 802.X-compliant wireless and/or wired communicationshardware for transmitting and/or receiving communications.

The example I/O interface 916 of FIG. 9 includes hardware, firmware,and/or software to connect one or more input/output devices 920 to theprocessor 902 for providing input to the processor 902 and/or providingoutput from the processor 902. For example, the I/O interface 916 mayinclude a graphics processing unit for interfacing with a displaydevice, a universal serial bus port for interfacing with one or moreUSB-compliant devices, a FireWire, a field bus, and/or any other type ofinterface. The example queuing system 312 and/or the example servicingsystem 302 includes a display device 924 (e.g., an LCD screen) coupledto the I/O interface 916. Other example I/O device(s) 920 may include akeyboard, a keypad, a mouse, a trackball, a pointing device, amicrophone, an audio speaker, a display device, an optical media drive,a multi-touch touch screen, a gesture recognition interface, a magneticmedia drive, and/or any other type of input and/or output device.

The example computing system 900 may access a non-transitory machinereadable medium 922 via the I/O interface 916 and/or the I/O device(s)920. Examples of the machine readable medium 922 of FIG. 9 includeoptical discs (e.g., compact discs (CDs), digital versatile/video discs(DVDs), Blu-ray discs, etc.), magnetic media (e.g., floppy disks),portable storage media (e.g., portable flash drives, secure digital (SD)cards, etc.), and/or any other type of removable and/or installedmachine readable media.

FIG. 10 illustrates an example remote service user interface 1000 thatmay be displayed at a computing device (e.g., the computing system 900of FIG. 9 ) associated with a remote computing system (e.g., thequeueing system 312 and/or the servicing system 302 of FIG. 3 ). Theexample interface 1000 enables a service operator to view informationassociated with the testing device 100 from which a service request isbeen received at the computing device.

The remote service user interface 1000 enables the service personnel 308a, 308 b to readily view system data (e.g., system status information,operator contact information, etc.) via a system information component1002. In some examples, the system information component 1002 may bereplaced with a connection information component to display theconnection data and/or a service data component to display the servicedata transmitted by the testing device 100 and/or stored by the queueingsystem 312. In some examples, the system data, the connection data,and/or the service data may be provided in the same interface 1002. Theillustrated system information component 1002 includes system data,connection data, and/or service data such as a system identifier, asecurity key code, a test fixture identifier and/or model number, atesting device installation date, a terms and conditions agreement date,an agreement identifier, a location identifier, a customer identifier, atimestamp of the most recent connection to the testing device 100, aninstalled software version of the testing device 100, a calibrationstatus of the testing device 100, and/or any other system data,connection data, service data, and/or other status information.

The example interface 1000 further includes an activity log 1004 thatlists events and timestamps associated with remote service performed onthe testing device 100, and timestamps of such remote service actions.For example, the activity log 1004 may include remote service actionssuch as receiving requests from the testing device 100, calibrationscheduling and/or performance, software updates, real-time connectionswith the testing device 100 (e.g., audio, video, text chat, applicationsharing, etc.), and/or non-real-time communications with the testingdevice 100 and/or personnel associated with the testing device (e.g.,emails).

The interface 1000 further includes location information for the testingdevice 100 (e.g., a physical address, a map) and/or available serviceassets for the testing device 100. While not shown in the interface1000, the example interface 1000 may enable the service personnel 308 a,308 b to select other interfaces (e.g., software menu options) to viewother information associated with the testing device 100, such astechnical service requests, viewing files uploaded by the testing device100 or otherwise provided to the servicing system 302, viewingdiagnostic information for the testing device 100, and/or any otherservice information and/or activities.

FIG. 11 illustrates an example remote service user interface 1100 thatmay be displayed at a computing device (e.g., the computing system 900of FIG. 9 ) associated with a remote computing system (e.g., thequeueing system 312 and/or the servicing system 302 of FIG. 3 ). Likethe interface 1000 of FIG. 10 , the interface 1100 enables a serviceoperator to view information associated with the testing device 100 fromwhich a service request is been received at the computing device. Theinterface 1100 may be selected by the service personnel 308 a, 308 b toenable communication (e.g., audio, video, text, remote control, etc.)with an operator at the testing device 100.

The example remote service user interface 1100 enables service personnel308 a, 308 b to readily view the request data transmitted from thetesting device 100 via a request information component 1102. The requestinformation component 1102 includes a request identifier (e.g., assignedby the testing device 100, the queueing system 312, the servicing system302, etc.). The remote service user interface 1100 also enables theservice personnel 308 a, 308 b to readily view system data (e.g., systemstatus information, operator contact information, etc.) via a systeminformation component 1104. In some examples, the system informationcomponent 1104 may be replaced with a connection information componentto display the connection data and/or a service data component todisplay the service data transmitted by the testing device 100 and/orstored by the queueing system 312. In some examples, the system data,the connection data, and/or the service data may be provided in the sameinterface 1100.

The example user interface 1100 of FIG. 11 includes a communicationdialog 1106, through which the service personnel 308 a, 308 b maycommunicate with the operator via the testing device 100 via real-timeand/or non-real-time communication methods. For example, the servicepersonnel 308 a, 308 b may communicate via text-based methods such emailand/or messaging, and/or may initiate a live support connection such asan audio connection, a video connection, and/or an application sharingconnection with the testing device 100 using one or more live connectionbuttons 1108, 1110.

In response to selecting the live connection button(s) 1108, 1110, theexample service terminal(s) 308 a, 308 b initiates a connection with thetesting device 100, including sending a support call initiation message.Example support call initiation messages may use session initiationprotocol (SIP), secure real-time transfer protocol (SRTP), and/or anyother protocol for establishing the remote connection between theterminal 310 a, 310 b and the testing device 100.

The example user interface 1100 may further enable service personnel 308a, 308 b to view files uploaded via the testing device 110 (e.g., asillustrated in FIG. 8 ). For example, the service personnel 308 a, 308 bmay select a file viewing component 1112 to select and/or view filesthat have been received in association with the testing device 100 withwhich the service terminal 310 a, 310 b is currently communicating orotherwise servicing. In some examples, files uploaded by the testingdevice 100 are forwarded to the service terminal 310 a, 310 b by thequeueing system 312, after association by the queueing system 312 of thefiles with one or more identifiers and/or other relevant informationabout the testing device 100.

FIG. 12 illustrates an example user interface 1200 that may be displayedat the testing device 100 of FIGS. 1 and 2 . The example user interface1200 may include the user interface 700 of FIG. 7 , over which aninbound call alert 1202 is displayed in response to receiving a supportcall initiation message at the testing device 100. The example inboundcall alert 1202 includes a connection acceptance button 1204, aconnection decline button 1206, and an indication 1208 of the remoteconnection request (e.g., audio, video, application sharing, etc.). Theoperator may select the connection acceptance button 1204 to authorizethe call, or select the connection decline button 1206.

If the operator selects the connection acceptance button 1204, theexample testing device 100 establishes the connection with the serviceterminal 310 a, 310 b.

FIG. 13 is a flowchart representative of example machine readableinstructions 1300 which may be executed by the example queueing system312 and/or the servicing system 302 of FIG. 3 to process requests. Theexample instructions 1300 may be performed by the processor 902 of FIG.9 to implement, for example, the queueing system 312 to receive andhandle connection requests, software update requests, and/or technicalsupport requests from the testing device 100, and/or requests fortesting device data from the servicing system 302 and/or the supportterminals 310 a, 310 b.

At block 1302, the processor 902 determines whether a connection requesthas been received from a testing device (e.g., the testing devices 100,314 of FIG. 3 ). For example, the processor 902 may select a request forprocessing from a queue of requests received at the queueing system 312.If a connection request has been received (block 1302), at block 1304the processor 902 verifies the testing device information received inthe connection request. For example, the processor 902 may determinewhether the information received in the request (e.g., a serial number,operator information, etc.) corresponds to information stored inassociated with the testing device 100 (e.g., whether the testing device100 is subscribed to a remote connection service).

At block 1306, the processor 902 determines whether the testing device100 has been verified. If the testing device 100 has been verified(block 1306), at block 1308 the processor 902 establishes a connectionwith the testing device 100 (e.g., via the network interface 914) andtransmits a connection identifier to the testing device 100. Theprocessor 902 may also store the connection identifier in associationwith the testing device 100 for reference with future requests from thetesting device 100. At block 1310, the processor 902 transmits a mostrecent software version number to the testing device 100. Transmittingthe software version number may involve determining a current softwareversion corresponding to the testing device 100 based on, for example,the serial number and/or model number of the testing device 100. In thismanner, the example queueing system 312 may inform the testing device100 of the current software version each time a connection isestablished.

After transmitting the software version number (block 1310), or if aconnection request has not been received (block 1302), at block 1312 theprocessor 902 determines whether a software update request has beenreceived. For example, a message stored in the message queue at thequeueing system 312 may be a software update request. If a softwareupdate request has been received (e.g., from the testing device 100)(block 1312), at block 1314 the example processor 902 determines whetherthe testing device 100 is authorized to receive software updates. Forexample, the processor 902 may access a database to determine whetherthe testing device 100 is subscribed to receive software updates and/orwhether any software updates are available to the testing device 100(e.g., under a software rollout policy).

If the testing device 100 is authorized to receive software updates(block 1314), at block 1316 the processor 902 provides the updatedsoftware to the testing device 100. If the testing device 100 is notauthorized to receive software updates (block 1314), at block 1318 theprocessor 902 redirects the testing device 100 to an authorizationdialog. For example, the processor 902 may transmit a response with aURL to enable an operator of the testing device to subscribe to asoftware update service, indicate authorization from an administrator ofthe testing device 100, and/or any other authorization.

After redirection the testing device 100 (block 1318), after providingthe updated software (block 1316), or if a software update request hasnot been received (block 1312), at block 1320 the processor 902determines whether a technical support request has been received from atesting device. If a technical support request has been received (block1320), at block 1322 the processor 902 adds an entry to an activity logbased on the request. For example, the activity log may storeinformation associated with support requests and/or support servicesprovided.

At block 1324, the processor 902 retrieves system data, service data,and/or connection data for the testing device 100 from which the requestis received. For example, the processor 902 may access, from a databaseor other storage, one or more of unique system identifiers of thetesting device 100, session identifiers or other connection informationassociated with the testing device 100, contact information of personnelassociated with the testing device 100, physical location informationfor the testing device 100, testing device software information, currentsoftware version information, service and support history for thetesting device 100, testing device model information (e.g., modelnumbers, manufacturing year, manufacturing batch, hardware version,firmware version, etc.), testing device installation dates, servicecontract information (e.g., a contract number, contract terms, servicelevel agreement information, etc.), testing device purchase information(e.g., an order number), calibration information (e.g., last calibrationdate, calibration due date, calibration status, etc.), a downloadstatus, and/or an acceptance date of testing device terms andconditions. At block 1326, the processor 902 associates the system data,the service data, and/or the connection data with the request.

At block 1328, the queueing system 312 (e.g., via the processor 902)forwards the request and any associated data to the servicing system302. The example servicing system 302 may assign the request toappropriate service personnel 308 a, 308 b, who may then access therequest and/or any associated data, and/or request further informationfrom the queueing system 312 via the terminal(s) 310 a, 310 b. At block1330, the processor 902 acknowledges the technical support request tothe testing device 100.

After acknowledging the technical support request (block 1330), or if atechnical support request has not been received (block 1320), at block1332 the processor 902 determines whether a request for testing devicedata has been received. For example, the queueing system 312 may receiverequests for data associated with a technical support request beinghandled at the terminals 310 a, 310 b. If a request for testing devicedata has been received (block 1332), at block 1334 the processor 902retrieves system data, service data, and//or connection data for therequested testing device. At block 1336, the processor 902 transmits theretrieved data to the servicing system 302 (or to the requestingterminal 310 a, 310 b).

After transmitting the retrieved data to the servicing system 302, or ifa request for testing device data has not been received (block 1332),control returns to block 1302 to continue processing messages.

FIG. 14 is a flowchart representative of example machine readableinstructions 1400 which may be executed by the example queueing system312 and/or the servicing system 302 to perform establish a real-timesupport session at the testing device 100 of FIGS. 1, 2, and 3 . Theexample instructions 1400 may be performed by the processor 902 of FIG.9 to implement the queueing system 312 to establish a real-time supportsession between a terminal 310 a, 310 b in the servicing system 302 anda testing device 100 with an established connection to the queueingsystem 312. In some examples, the instructions 1400 may be performed bya separate server within the queueing system 312 from a serverperforming the instructions 1300 of FIG. 13 , or may be performed in aparallel process.

At block 1402, the example processor 902 determines whether a requesthas been received from a service terminal 310 a, 310 b to initiate areal-time support session. Example real-time support sessions that maybe requested include one or more of an audio/video or audio-onlysession, and/or an application sharing session. If a request has notbeen received (block 1402), control may iterate to block 1402 to await arequest to initiate a real-time support session.

When a request has been received from a service terminal 310 a, 310 b toinitiate a real-time support session (block 1402), at block 1404 theprocessor 902 sends a request to a session server for one or moresession token(s). For example, a session token may be requested andreceived for each type of session requested by the service terminal 310a, 310 b. The session server may be implemented within the queueingsystem 312 or as a separate system to which the queueing system 312 mayconnect.

At block 1406, the processor 902 creates session parameters for thesupport session using the received session token and an identifier ofthe testing device 100 indicated in the request to initiate thereal-time support session. At block 1408, the example processor 902returns the session parameters, the session token, and the testingdevice identifier to the requester. The example instructions 1400 maythen end and/or iterate to await further requests for real-time supportsessions.

The present methods and systems may be realized in hardware, software,and/or a combination of hardware and software. The present methodsand/or systems may be realized in a centralized fashion in at least onecomputing system, or in a distributed fashion where different elementsare spread across several interconnected computing systems. Any kind ofcomputing system or other apparatus adapted for carrying out the methodsdescribed herein is suited. A typical combination of hardware andsoftware may include a general-purpose computing system with a programor other code that, when being loaded and executed, controls thecomputing system such that it carries out the methods described herein.Another typical implementation may comprise an application specificintegrated circuit or chip. Some implementations may comprise anon-transitory machine-readable (e.g., computer readable) medium (e.g.,FLASH drive, optical disk, magnetic storage disk, or the like) havingstored thereon one or more lines of code executable by a machine,thereby causing the machine to perform processes as described herein. Asused herein, the term “non-transitory machine-readable medium” isdefined to include all types of machine readable storage media and toexclude propagating signals.

As utilized herein the terms “circuits” and “circuitry” refer tophysical electronic components (i.e. hardware) and any software and/orfirmware (“code”) which may configure the hardware, be executed by thehardware, and or otherwise be associated with the hardware. As usedherein, for example, a particular processor and memory may comprise afirst “circuit” when executing a first one or more lines of code and maycomprise a second “circuit” when executing a second one or more lines ofcode. As utilized herein, “and/or” means any one or more of the items inthe list joined by “and/or”. As an example, “x and/or y” means anyelement of the three-element set {(x), (y), (x, y)}. In other words, “xand/or y” means “one or both of x and y”. As another example, “x, y,and/or z” means any element of the seven-element set {(x), (y), (z), (x,y), (x, z), (y, z), (x, y, z)}. In other words, “x, y and/or z” means“one or more of x, y and z”. As utilized herein, the term “exemplary”means serving as a non-limiting example, instance, or illustration. Asutilized herein, the terms “e.g.,” and “for example” set off lists ofone or more non-limiting examples, instances, or illustrations. Asutilized herein, circuitry is “operable” to perform a function wheneverthe circuitry comprises the necessary hardware and code (if any isnecessary) to perform the function, regardless of whether performance ofthe function is disabled or not enabled (e.g., by a user-configurablesetting, factory trim, etc.).

While the present method and/or system has been described with referenceto certain implementations, it will be understood by those skilled inthe art that various changes may be made and equivalents may besubstituted without departing from the scope of the present methodand/or system. For example, block and/or components of disclosedexamples may be combined, divided, re-arranged, and/or otherwisemodified. In addition, many modifications may be made to adapt aparticular situation or material to the teachings of the presentdisclosure without departing from its scope. Therefore, the presentmethod and/or system are not limited to the particular implementationsdisclosed. Instead, the present method and/or system will include allimplementations falling within the scope of the appended claims, bothliterally and under the doctrine of equivalents.

1. A testing device to measure a mechanical property of a material orcomponent, the testing device comprising: a computing device configuredto obtain a measurement value related to the material or component undertest, the computing device comprising: a display; an input device; aprocessor; and a memory coupled to the processor and storing computerreadable instructions which, when executed by the processor, cause theprocessor to: in response to first input via the input device, transmita request for a technical support service to a remote computing system;and perform, at the computing device, one or more remote service actionsassociated with the technical support service.
 2. The testing device asdefined in claim 1, wherein the computer readable instructions furthercause the processor to transmit, to the remote computing system,information associated with the one or more remote service actions. 3.The testing device as defined in claim 2, wherein the informationassociated with the one or more remote service actions comprises atleast one of a testing device calibration status, a software version, aserial number of the testing device, operator contact informationassociated with the testing device, or a service agreement status. 4.The testing device as defined in claim 1, wherein the computer readableinstructions further cause the processor to: present, via the display,an interface representative of a file system stored on the computingdevice that permits an operator to select one or more files from thefile system; and in response to a designated input via the input device,transmit the selected one or more files to the remote computing system.5. The testing device as defined in claim 1, further comprising amicrophone and a speaker, wherein the computer readable instructionsfurther cause the processor to establish, with a second computing systemidentified in the support call initiation message, at least one of anaudio connection or a remote control connection.
 6. The testing deviceas defined in claim 5, wherein the computer readable instructions causethe processor to enter the support call reception mode by transmitting arequest message to the remote computing system, in which the supportcall initiation message is a response to the request.
 7. The testingdevice as defined in claim 6, wherein the request comprises an Internetprotocol (IP) request message.
 8. The testing device as defined in claim5, wherein the computer readable instructions cause the processor toestablish the audio connection by establishing a voice over Internetprotocol (VoIP) session.
 9. The testing device as defined in claim 5,wherein the computer readable instructions cause the processor toestablish the remote control connection by establishing an applicationsharing protocol session via the remote computing system.
 10. Thetesting device as defined in claim 5, wherein the computer readableinstructions further cause the processor to: enter a support callreception mode in which the processor can receive a support callinitiation message from the remote computing system; and in response toreceiving the support call initiation message, display an inbound callalert on the display, the instructions to cause the processor toestablish the at least one of the audio connection or the remote controlconnection in response to receiving, while the inbound call alert isactive, an input associated with acceptance of a support call associatedwith the support call initiation message.
 11. The testing device asdefined in claim 1, wherein the testing device is configured to test,for a material under test, at least one of a tensile strength, acompression strength, a flexural strength, a shear strength, an impactstrength, a torsional strength, or an adhesion strength.
 12. The testingdevice as defined in claim 1, wherein the computer readable instructionsfurther cause the processor to access a communication received from theremote computing system and associated with the request, thecommunication identifying the one or more remote service actions to beperformed on the computing device, the instructions to cause theprocessor to perform the one or more remote service actions in responseto second input via the user input device.
 13. The testing device asdefined in claim 1, wherein the request for the technical supportservice comprises at least one of: a request for a software update forthe testing device or a request for a live support session.
 14. Thetesting device as defined in claim 1, wherein the processor is furtherconfigured to, in response to logging in an operator at the computingdevice, transmit data associated with the testing device to the remotecomputing system.
 15. The testing device as defined in claim 1, whereinthe computer readable instructions further cause the processor to, priorto the request for the technical support service, establish a dataconnection to the remote computing system.
 16. The testing device asdefined in claim 15, wherein the request for the technical supportservice includes at least one of an identifier of the testing device oran identifier associated with the data connection established betweenthe testing device and the remote computing system.
 17. The testingdevice as defined in claim 1, wherein the computer readable instructionsfurther cause the processor to determine a calibration status of thetesting device and, in response to determining that the testing deviceis due for calibration based on the calibration status, display anotification on the display associated with the calibration status. 18.The testing device as defined in claim 17, wherein the processor isfurther configured to, in response to receiving an input via the inputdevice, display an interface to enable an operator of the computingdevice to schedule a calibration for the testing device.
 19. A testingdevice to measure a mechanical property of a material or component, thetesting device comprising: a computing device configured to obtain ameasurement value related to the material or component under test, thecomputing device comprising: a display; an input device; a processor;and a memory coupled to the processor and storing computer readableinstructions which, when executed by the processor, cause the processorto: determine a calibration status of the testing device; and inresponse to determining that the testing device is due for calibrationbased on the calibration status, display a notification on the displayassociated with the calibration status.